/*
 * Copyright (c) 2020-2030 Sishun.Co.Ltd. All Rights Reserved.
 */
package com.demo.alipay.study.config;

import com.alibaba.fastjson.JSONObject;
import lombok.Data;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Configuration;

/**
 * @author ：lvfeilong
 * @version ：
 * @description ：
 * @program ：alipay-study
 * @date ：Created in 2021/7/2 16:52
 */
@Data
@Configuration
public class AlipayConfig {

    /**
     * 应用ID,您的APPID，收款账号既是您的APPID对应支付宝账号
     */
    @Value("${alipay.app_id}")
    public String appId;

    /**
     * 商户私钥，您的PKCS8格式RSA2私钥
     */
    @Value("${alipay.merchant_private_key}")

    public String merchantPrivateKey;

    /**
     * 支付宝公钥,查看地址：https://openhome.alipay.com/platform/keyManage.htm 对应APPID下的支付宝公钥。
     */
    @Value("${alipay.alipay_public_key}")
    public String alipayPublicKey;

    /**
     * 服务器异步通知页面路径  需http://格式的完整路径，不能加?id=123这类自定义参数，必须外网可以正常访问
     */
    @Value("${alipay.notify_url}")
    public String notifyUrl;

    /**
     * 页面跳转同步通知页面路径 需http://格式的完整路径，不能加?id=123这类自定义参数，必须外网可以正常访问
     */
    @Value("${alipay.return_url}")
    public String returnUrl;

    /**
     * 签名方式
     */
    @Value("${alipay.sign_type}")
    public String signType;

    /**
     * 字符编码格式
     */
    @Value("${alipay.charset}")
    public String charset;

    /**
     * 支付宝网关
     */
    @Value("${alipay.gatewayUrl}")
    public String gatewayUrl;

    /**
     * 日志存放
     */
    @Value("${alipay.log_path}")
    public String logPath;

    @Override
    public String toString() {
        JSONObject json = new JSONObject();
        json.put("应用id", appId);
        json.put("应用私钥", merchantPrivateKey);
        json.put("支付宝公钥", alipayPublicKey);
        json.put("支付宝异步回调地址", notifyUrl);
        json.put("支付宝同步回调地址", returnUrl);
        json.put("签名类型", signType);
        json.put("编码格式", charset);
        json.put("支付宝网关", gatewayUrl);
        json.put("日志存放路径", logPath);
        return json.toJSONString();
    }

}